package com.hzlx.qualityStandards.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 质量检验标准库（定义产品/物料/工序的检验规则）对象 mes_quality_standards
 * 
 * @author ruoyi
 * @date 2025-07-01
 */
public class MesQualityStandards extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 检验标准ID */
    private String standardId;

    /** 检验标准名称 */
    @Excel(name = "检验标准名称")
    private String standardName;

    /** 标准详细描述 */
    @Excel(name = "标准详细描述")
    private String description;

    /** 适用对象类型（产品/物料/工序） */
    @Excel(name = "适用对象类型", readConverterExp = "产=品/物料/工序")
    private String targetType;

    /** 关联对象ID（产品ID/物料ID/工序ID） */
    @Excel(name = "关联对象ID", readConverterExp = "产=品ID/物料ID/工序ID")
    private String targetId;

    /** 标准版本号 */
    @Excel(name = "标准版本号")
    private String standardVersion;

    /** 抽样方案（如：全检/MIL-STD-105E/GB2828） */
    @Excel(name = "抽样方案", readConverterExp = "如=：全检/MIL-STD-105E/GB2828")
    private String samplePlan;

    /** 合格判定数（AQL值） */
    @Excel(name = "合格判定数", readConverterExp = "A=QL值")
    private Long acceptanceNumber;

    /** 不合格判定数（RQL值） */
    @Excel(name = "不合格判定数", readConverterExp = "R=QL值")
    private Long rejectionNumber;

    /** 是否启用 */
    @Excel(name = "是否启用")
    private Integer isActive;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdAt;

    /** 最后更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updatedAt;

    public void setStandardId(String standardId) 
    {
        this.standardId = standardId;
    }

    public String getStandardId() 
    {
        return standardId;
    }

    public void setStandardName(String standardName) 
    {
        this.standardName = standardName;
    }

    public String getStandardName() 
    {
        return standardName;
    }

    public void setDescription(String description) 
    {
        this.description = description;
    }

    public String getDescription() 
    {
        return description;
    }

    public void setTargetType(String targetType) 
    {
        this.targetType = targetType;
    }

    public String getTargetType() 
    {
        return targetType;
    }

    public void setTargetId(String targetId) 
    {
        this.targetId = targetId;
    }

    public String getTargetId() 
    {
        return targetId;
    }

    public void setStandardVersion(String standardVersion) 
    {
        this.standardVersion = standardVersion;
    }

    public String getStandardVersion() 
    {
        return standardVersion;
    }

    public void setSamplePlan(String samplePlan) 
    {
        this.samplePlan = samplePlan;
    }

    public String getSamplePlan() 
    {
        return samplePlan;
    }

    public void setAcceptanceNumber(Long acceptanceNumber) 
    {
        this.acceptanceNumber = acceptanceNumber;
    }

    public Long getAcceptanceNumber() 
    {
        return acceptanceNumber;
    }

    public void setRejectionNumber(Long rejectionNumber) 
    {
        this.rejectionNumber = rejectionNumber;
    }

    public Long getRejectionNumber() 
    {
        return rejectionNumber;
    }

    public void setIsActive(Integer isActive) 
    {
        this.isActive = isActive;
    }

    public Integer getIsActive() 
    {
        return isActive;
    }

    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }

    public void setUpdatedAt(Date updatedAt) 
    {
        this.updatedAt = updatedAt;
    }

    public Date getUpdatedAt() 
    {
        return updatedAt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("standardId", getStandardId())
            .append("standardName", getStandardName())
            .append("description", getDescription())
            .append("targetType", getTargetType())
            .append("targetId", getTargetId())
            .append("standardVersion", getStandardVersion())
            .append("samplePlan", getSamplePlan())
            .append("acceptanceNumber", getAcceptanceNumber())
            .append("rejectionNumber", getRejectionNumber())
            .append("isActive", getIsActive())
            .append("createdAt", getCreatedAt())
            .append("updatedAt", getUpdatedAt())
            .toString();
    }
}
